package 方法的重载;
/*
* 方法的重载(overload) loading
* 1. 定义：在同一个类中，允许存在一个以上的同名方法，只要它们的参数个数或者参数类型不同即可
*          "两同一不同":同一个类，相同方法名
*           参数列表不同;参数个数不同;参数类型不同;
* 2. 举例
*    Arrays类中重载的sort()/binarySearch()
*
* 3. 判断是否是重载：
*     跟方法的权限修饰符、返回值类型、形参变量名、方法体都没有关系！
* */
public class OverLoad {

    public static void main(String[] args) {
        OverLoad overLoadTest=new OverLoad();
        overLoadTest.getSum(1,1);

        overLoadTest.getSum(1.0,1);

        overLoadTest.getSum("1",1);

        overLoadTest.getSum(1,"1");
    }



    public void getSum(int i,int j){
        System.out.println("int中");
    }
    public void getSum(double d1, double d2){
        System.out.println("double");
    }
    public void getSum(String s,int i){
        System.out.println("String int");
    }
    public void getSum(int i, String s){
        System.out.println("int String");
    }
    /*
    * 3.
    * */

    //同一类中，方法名相同，参数列表不同，和返回值类型无关
//    public int getSum(int i, int j){return 0;}
    //和形参名称无关
//    public void getSum(int m,int n){ }
    //和权限无关
//    private void getSum(int i, int j){}


}
